#!/usr/bin/env python3
import sys
import os
import argparse

# 添加项目根目录到Python路径
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))

def main():
    """主函数"""
    parser = argparse.ArgumentParser(description='OpenIM 聊天客户端')
    parser.add_argument(
        'client_type',
        choices=['cli', 'gui', 'web'],
        help='客户端类型: cli (命令行客户端), gui (图形界面客户端) 或 web (Web客户端)'
    )

    # 如果没有提供参数，显示帮助信息
    if len(sys.argv) == 1:
        parser.print_help()
        return

    args = parser.parse_args()

    if args.client_type == "cli":
        # 启动命令行客户端
        from .cli_client import CLIClient
        import asyncio
        client = CLIClient("cfg.json")
        asyncio.run(client.run())
    elif args.client_type == "gui":
        # 启动GUI客户端
        from .gui_client import GUIClient
        client = GUIClient("cfg.json")
        client.run()
    elif args.client_type == "web":
        # 启动Web服务器
        from . import web_server
        print("OpenIM Web 服务器启动在 http://localhost:8080")
        web_server.start_web_server()

if __name__ == "__main__":
    main()
